<?php

/**
 * 这是表 "{{taglib}}" 的模型类。
 *
 * 下面是表 "{{taglib}}" 中可用的列:
 * @property integer $taglib_id
 * @property string $taglib_name
 * @property string $taglib_description
 * @property string $taglib_parent
 * @property string $taglib_cretatime
 * @property string $taglib_updatetime
 *
 * 下面是模型中可用的关联:
 * @property Tags[] $tags
 */
class Taglib extends CActiveRecord
{
    /**
     * 返回指定 AR 类的静态模型。
     * @param string $className 活动记录类的名字。
     * @return Taglib静态模型类
     */
    public static function model($className=__CLASS__)
    {
        return parent::model($className);
    }

    /**
     * @return string 相关联的数据库表名。
     */
    public function tableName()
    {
        return '{{taglib}}';
    }

    /**
     * @return array 模型属性的验证规则。
     */
    public function rules()
    {
        // 注意: 仅需为可能接受用户输入的属性定义规则。
        return array(
            array('taglib_name, taglib_parent, taglib_cretatime', 'required'),
            array('taglib_name', 'length', 'max'=>255),
            array('taglib_parent', 'length', 'max'=>11),
            array('taglib_description, taglib_updatetime', 'safe'),
        );
    }

    /**
     * @return array 模型的关联。
     */
    public function relations()
    {
        return array(
            'tags' => array(self::HAS_MANY, 'Tags', 'tag_lib_id'),
        );
    }

    /**
     * @return array 为属性自定义的标签。 (name=>label)
     */
    public function attributeLabels()
    {
		return array(
			'taglib_id' => 'Taglib',
			'taglib_name' => 'Taglib Name',
			'taglib_description' => 'Taglib Description',
			'taglib_parent' => 'Taglib Parent',
			'taglib_cretatime' => 'Taglib Cretatime',
			'taglib_updatetime' => 'Taglib Updatetime',
		);    
	}
	/**
	 * 基于当前的检索/过滤条件，检索出符合条件的模型实例。
	 * @return CActiveDataProvider 可以基于当前的检索/过滤条件返回模型实例的数据提供者。
	 */
	public function search()
	{
		// 注意：请修改下面的代码，将不需要检索的属性移除。
		$criteria=new CDbCriteria;
		$criteria->compare('taglib_id',$this->taglib_id);
		$criteria->compare('taglib_name',$this->taglib_name,true);
		$criteria->compare('taglib_description',$this->taglib_description,true);
		$criteria->compare('taglib_parent',$this->taglib_parent,true);
		$criteria->compare('taglib_cretatime',$this->taglib_cretatime,true);
		$criteria->compare('taglib_updatetime',$this->taglib_updatetime,true);
		return new CActiveDataProvider($this, array('criteria'=>$criteria));
	}
}